package com.ityedao.Lambda表达式;

public class LambdaTest {
    public static void main(String[] args) {
//        Animal animal = new Animal() {
//            @Override
//            public void run() {
//                System.out.println("狗跑得贼快~~");
//            }
//        };
//        animal.run();

        // 错误的代码！！！！
        // 注意：Lambda表达式并不是说能简化全部匿名内部类的写法，只能简化函数式接口的匿名内部类。
//        Animal animal = () -> {
//            System.out.println("狗跑得贼快~~");
//        };
//        animal.run();

        // 正确代码演示
//        Swimming s = new Swimming() {
//            @Override
//            public void swim() {
//                System.out.println("学生在快乐的游泳~~~");
//            }
//        };
//        s.swim();
        Swimming s = () -> {
            System.out.println("学生在快乐的游泳~~~");
        };
        s.swim();
    }
}
// ②正确代码演示
interface Swimming{
    void swim();
}
// ①错误代码演示
abstract class Animal{
    public abstract void run();
}